/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package Modelo;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author lucas_000
 */
public class Arquivo {
    
    public static void save(ArrayList<Jogador> time, String pasta){
        File padrao = new File("Times");
        File arquivo = new File("Times/" + pasta);
        
        if(!padrao.exists())
            padrao.mkdir();
        //alalalalalalalal
        
        if(!arquivo.exists())
            arquivo.mkdir();
        
        try{            
            File diretorio[] = new File[time.size()];
            
            for(int i=0; i<time.size(); i++){
                diretorio[i] = new File("Times/" + pasta + "/" + time.get(i).getNome() + ".txt");
                
                if(!diretorio[i].exists())
                    diretorio[i].createNewFile();
            }
            
            ObjectOutputStream escrever = null;
            
            for(int i=0; i<time.size(); i++){
                escrever = new ObjectOutputStream(new FileOutputStream(diretorio[i]));
                escrever.writeObject(time.get(i));
            }            
            escrever.close();
            
        } catch(IOException ex){
            ex.printStackTrace();
        }     
    }
    
    public static ArrayList<Jogador> upload(String pasta){
        File padrao = new File("Times");
        File arquivo = new File("Times/" + pasta);
        ArrayList<Jogador> time = new ArrayList<Jogador>();
        
        if(!padrao.exists())
            padrao.mkdir();
        
        if(!arquivo.exists())
            arquivo.mkdir();
        
        try{           
            File diretorio[] = arquivo.listFiles();
            
            ObjectInputStream leitura = null;
            
            Jogador aux = null;
            
            for(int i=0; i<diretorio.length; i++){
                leitura = new ObjectInputStream(new FileInputStream(diretorio[i]));
                
                aux = (Jogador) leitura.readObject();
                
                time.add(aux);
            }
            leitura.close();
                      
        } catch(IOException ex){
            ex.printStackTrace();
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(Arquivo.class.getName()).log(Level.SEVERE, null, ex); 
        }
        
        return time;
    }
    
}
